import greenfoot.*;  

/**
 * Records es el mundo donde se muestran los records del proyecto.
 * 
 * @author (Gabriela Alvarado) 
 * @version (mayo 2013)
 */
public class Records extends World
{
    private ButtonBack back;

    /**
     * Constructor de Records.
     * Crea y anade al mundo un boton para regresar al menu.
     */
    public Records()
    {    
        super(700, 530, 1);
        back = new ButtonBack();
        addObject(back,620,480);
    }

    /**
     * Muestra las 10 puntuaciones mas altas del juego,
     * la posicion del jugador actual y la advertencia en 
     * caso de que aun no haya sido jugado por nadie.
     * Si se presiona el boton de regreso al mundo
     * se crea un nuevo mundo Inicio.
     */
    public void act()
    {
        java.util.List records=UserInfo.getTop(10);
        RecordUser usuario;
        UserInfo info;

        if(records!=null)
        {
            for(int i=0; i<records.size(); i++)
            {
                info=(UserInfo)records.get(i);
                usuario=new RecordUser((i+1)+". "+info.getUserName(),info.getScore(),info.getUserImage());
                usuario.addToWorld(100+50*i,this);
            }

            LRecords let;

            if(UserInfo.getMyInfo().getRank()>0)
            {
                let=new LRecords("Your Position:"+UserInfo.getMyInfo().getRank());
            }
            else
            {
                let=new LRecords("You aren't in the Records List");
            }
            this.addObject(let,130+(let.getImage().getWidth()/2),470);
        }

        else
        {
            LRecords letr=new LRecords("Whitout Scores...");
            this.addObject(letr,350,250);
        }

        if (this!=null)
        {      
            if (  Greenfoot.mouseClicked(back) )
            {
                Inicio inicio = new Inicio();
                Greenfoot.setWorld(inicio); 

            }
        }

    }

}
